package com.kaifamiao.methods;

/**
 * 可变长参数使用规则:
 * 1、同一个方法的参数列表中至多出现一个可变长参数
 * 2、可变长参数必须出现在参数列表末尾（即必须出现在其它参数之后）
 */
public class Plane {
    /**
     * JDK 1.5 老特性: 可变长参数 (也许被称作可变参数或变长参数)
     * @param aviator 表示飞行员（这里表示司机）
     * @param passengers 表示乘客 (可能是0到N个)
     */
    public void fly(String aviator, String... passengers){
        System.out.println( "飞行员" + aviator + "正在驾驶飞机飞行" );
        if( passengers == null ) {
            return;
        }
        if( passengers.length == 0 ) {
            System.out.println( "飞机上没有乘客" );
            return;
        }
        System.out.print( "飞机上的乘客有: " );
        // 对于 可变长参数 来说，在方法内部完全可以视为数组来处理
        for( int i = 0 ; i < passengers.length ; i++ ){
            String name = passengers[i];
            System.out.print( name + "\t" );
        }
        System.out.println();
    }

    // public void fly(String aviator, String[] passengers) { }

}
